With this disassembly, the dialog in Paper Mario can be changed in place without needing to worry about space limitations. This is made possible by removing useless padding data, freeing up 12kB of space for new text! The padding omission has been tested on real N64 hardware (Thanks Davideesk!), and it seems to work without any issues.
Download
Version 0.2: http://shygoo.net/pmdlg/patch/paper-mario-dialog-v0.2.zip
This disassembly is for the
armips assembler. I recommend using David's armips GUI:
http://origami64.net/showthread.php?tid=775.
Decoder Utility
The decoder utility used to generate the disassembly is open source:
https://github.com/shygoo/pmdlg.
See the included readme for instructions on how to build the program and generate fresh disassemblies.
Wiki Page
There is a new Origami64 Wiki page available here that covers the intricacies of Paper Mario's dialog system:
http://wiki.origami64.net/paper_mario/dialog_system
Todo
- There are still quite a few commands that have unknown/undocumented purpose, namely command 0x00 which seems to completely change the encoding of the last dialog section.
- Ideally the disassembly will use macros to wrap commands/styles/effects for easier use and smaller file sizes.
- Documentation and support for the Japanese and PAL ROMs.
Big thanks to Justin Aquadro for his original dialog system documentation:
http://hocuspocus.taloncrossing.com/rii/pmdiag/pm1docs.txt